//调入数据库
const db = require('../db')
    // 获取班级信息的处理函数
exports.getAllClasses = (req, res) => {
    //    where limit 0 , 3 表示获取从0开始的3个数   降序
    const sql = `SELECT * FROM stu_class where is_delete=0 order by id DESC limit ?, ?`
        // +强制转换number类型
    const count = +req.query.count
    const starIndex = (req.query.pageNum - 1) * count
    db.query(sql, [starIndex, count], (err, results1) => {
        if (err) return res.sd(err.message)
        if (results1.length < 1) return res.sd('获取班级信息失败')
        const sql = `SELECT count(id) as total FROM stu_class where is_delete=0`

        db.query(sql, (err, results2) => {
            if (err) return res.sd(err.message)
            if (results2.length < 1) return res.sd('获取总数据数量失败')

            res.send({
                status: 0,
                message: '获取班级信息成功',
                data: results1,
                total: results2[0].total
            })
        })

    })
}

// 根据id获取班级信息的处理函数
exports.getClassById = (req, res) => {
        const sql = `select * from stu_class where id=? and is_delete=0`

        db.query(sql, req.query.id, (err, results) => {
            if (err) return res.sd(err.message)
            if (results.length !== 1) return res.sd('获取班级信息失败')

            res.send({
                status: 0,
                message: '获取班级信息成功',
                data: results[0]
            })
        })
    }
    //新增班级信息处理函数
exports.addClass = (req, res) => {
        const sql = `select * from stu_class where class_name=?`

        db.query(sql, req.body.class_name, (err, results) => {
            if (err) return res.sd(err.message)
            if (results.length > 0) return res.sd('班级已经存在')

            // 插入数据
            const sql = `insert into stu_class set ?`
            db.query(sql, req.body, (err, results) => {
                if (err) return res.sd(err.message)
                if (results.affectedRows !== 1) return res.sd('新增数据失败')
                res.send({
                    status: 0,
                    message: '新增班级成功'
                })
            })
        })
    }
    // 删除班级处理函数
exports.deleteClass = (req, res) => {
        const sql = `update stu_class set is_delete=1 where id=?`

        db.query(sql, req.body.id, (err, results) => {
            if (err) return res.sd(err.message)
            if (results.affectedRows !== 1) return res.sd('删除班级信息失败')

            res.send({
                status: 0,
                message: '删除班级信息成功'
            })
        })
    }
    // 更新班级信息处理函数
exports.updateClass = (req, res) => {
    const sql = `update stu_class set ? where id=?`

    db.query(sql, [req.body, req.body.id], (err, results) => {
        if (err) return res.sd(err.message)
        if (results.affectedRows !== 1) res.sd('更新班级信息失败')

        res.send({
            status: 0,
            message: '更新班级信息成功'
        })
    })
}